@L}5 _$% l0$)$$Hȱ$ UhL" `e$$%`$%`  R@P!( L(1   Y I`  d  Ld M * @  $ % CC$$)%1 Udߥ$9%: !0 S$% DD˙`  }J)Lr LLj jL L`͢L LLLPLQL z >L01`pppppppppppBULpBLA>L6}!4-!3 ))makroassembler#opyright(ofacker&inzelc 􀔘򀊊}(L(K =( >(< ( 1.(L3.(D L8=( >( l @j 1L3 9~`` `H****)h)}p(` `/ 0$ a( 0% a(L|E 8} 2` u,SAVE**+* , u,INTO: , ) )C )͍,*eȍ.*΍-*eɍ/* }/0/ -0 ) 0 700 ) S00 -0` -0 u,ADR-ERROR`H -0 u,ERROR-CODE: h + T/` u,LOAD / T/ -0 00Ʃ 700**Ш+* }Т ) / S00% )0ЅЁ )0,*-* )0.*/*Lh) T/ -0`ō,*ƍ-*.*Í/*`/*m.*8,*Ȋ-*`*ɛ > }`* `BHI V0H Vh`D1:*.*D:ATMASII.COM...(K)KW. HOFACKER GMBHD ` 1ą u, }MONITOR n*LU* @2 ݈*` *H*H`MBFCDSLGIE*++,-(9)022/j00182 u,DUMP , u,ASCII? @2Y 1̩ʩ } T/$0 @2X`̥ƅ +Ņ +ɩ˩ T/ɠ$0)}  @ T/ x+إ¥Ð$!$ }Džťȅг$$0ũ T/`H$0hH T/hHJJJJ +h)  0i7LT/ u,BLOCKTRANSFER , u,INTO: ,ͅǥ΅Ƞőǥ¥ð}` u,FILL , u,WITH: ',ͅĠđť¥ð `ͅΩ @2ɛ?XLU* T/:0") GA7 }  && |2 T/ T/`hh΢Ρ T/HH` u,FROM: ,ͅť΅ u,TO : ,ͅ¥΅` u,CHANGEADRESS: },ͅť΅ƥ + + T/ + u, =>  ',͠ u,DISASSEMBLERSTART: ,͍΍ 1 W- H.$0 }T/ @2X` i- H.ń ,.ŨJJ) JW.JJJJ).)ʘ) JJJ ȈH + ?.Ȑh.}.&*i) T/ =.Ű +Đ.) T/.) T/` K.Ș +L+ T/Ʀ %.: T/ T/}`8ƪeŐ`@E@ 0"E3@ @E3@ @E@ "D3ЌD"D3ЌD"D3@ "D3@ bx!YMJؤ#]#})i#$S#$S[[i$$)|mi)S4i#bZH&bTDThDt(ntJrtttrDh2"&&rr&HDDHANS-CHRISTO}PH WAGNER 30.6.1981Єυ$ 1Lg/ 2Ϧ`0өө4өӠ`ɛ  )ӌ u,FILENAME (D:FN.EXT)? }BD*EHI V` u,FROM: -* +,* + u, TO : /* +.* + T/`JKBD*ELV BLVB}HI*D*ELVH )hB,*D-*EȝHɝI V````/` u,GOTO 0 ,lh҆ӄԺhhhX8ץ} u, PC AC XR YR SP NV.BDIZC + + ~+ ~+ ~+ ~+ T/0֐  T/LU* u,PRINT ? @2Y &1` u,R1: (1) OR }P: (2) OR VIA PORTS (3) @21XP481 114JJ 1(BJ D1E D1E VL~* l/`R1:P:}11/ BDEHI VL~*`l` B V`L/(ЄϢ@ B VBD2EJ VФ`Єυ@ BDE}HI VФ`ЄϢ0BD2EJ VBHI VH B VФh`L2K:E:** 0BHI V0} @ BD*EHI V -0`L+3L8Lt7L6L7L 6L7 6` (6l} 2l}} 2آL a8 & 6 8 6ƆةAĩ8宅P 48卅厅T 48喅嗅C 4 4 4& O}4ƈŮƇ  ^4戥ōŎ륑ŝ `4ů ^4成肋 4L4 4: 408}U4HW40 hh 4ڥ 0 4 4` d'ĝ ` 9 $01 4 80`  48& }% 4  a(Ƒ% -9$ 4&hhhh( I(ɛ !  +6,6 6LU3 6LU3!} ƕ . 5LU3LM3# 5膚 5#$8@U k6l6 Ɵդ֢LP3 5(`&"}` 8&x 8COE? PB VLS3 5:0) ee إ`#ж`#}CROK`ʆ`67667v7(6H566z8a86666#37'677 77763657777h7575657z8177H5J3v:d;5555 :7$}75x9555)Hŏ ŐIL5h j8`ŮƎƍŭH` 6 6Œ 7 ` 7 %}H 6 j8h` 5 6 6CL5H D7 D7L6 Z7 G Ai)`L5 50:`T Z7兆` 7` 7` &}6 ƐƏ` 7 7( ů j8` 7E`jE  `E`ů!'}ы挤įSL5 ы󦕽نe挥ů 7ŏŐ``ŬƗƖ`(}ƙŬƘ 6&.` 7` `8L3+-*HHH < >h-h eheLv>嵅hL>: )Њ <$08G  &&L)@&& zC = K:}ESYNTAX ERROҦäĆDŽȐ$0$0 KENAME UNKNOW,A,ACG,A$0&,A$0,A$0 KEORG ERROH [> Ah`l $;}0 [> H>Α @Ǥ ,  < < H>J Ȅ<} H>ǁЍ KKǙ8i:0ٕՊ܄`$0 ÄŤĄ`)? KESAME LABEL TWICťŤ„=}ei©ŠLȽLťŝLƝL`C.81HCW < = KEWRONG DELIMITEҥ!`K\ t( < <,` p>>}f bF f>` p> wE f>` p>ن f>من` p>)`FFFۥݡCv <$0NLMP <0 380L ?}<` KEDEVICE NOT PRESEN$03ϤЩ |C$0` <$ = D,瘑` KEMACRO ERRO$0` QD QD@} $f```} G@GKͭ<ʆ@L TEATMAS-II (C) 1985 HOFACKER / FINZEL B< g@F$A}$* TE PHYSICAL ENDADDRESS: G TE $0LD*** NO WARNINGS G$ < @2蚩L< (Dʆ$0 G 8eυϰХB}а < G8$hh溡 G(HH` bF$%H E G TE:ʊ必Ș KEIMPOSSIBLE BRANC {FL|E ; "LPG'# < p>fݠ lL=G(9 < p>, E}, PGLwE( p>LF} < p>l) KEADDRESSING ERRO$L|E KEOPCODE DIFFERENHJJJJ {Gh)  0i7LG pGLpG G` ) G} gF7JLSJFNVM}^gFIROjfnv~gFISTgFJLDgFDEgFIN6h************************************ * ATMAS-II Demo: Farb-Scrolling PF85 * * Abbruch durch START-Taste ********************O}**************** COLPF2 EQU $D018 Farbregister WSYNC EQU $D40A Synchron. VCOUNT EQU $D40B Rasterzeile RTCLK EQU $14 VBI-UhrP} CONSOL EQU $D01F Fkt.-Tasten * * Programm liegt im USER-Bereich * (ab $A800) * ORG $A800 res. Platz LDA #8 Abfrage dQ}er STA CONSOL START-Taste vorbereiten SCRCOL CLC LDA VCOUNT Bild-Zaehler ADC RTCLK plus Raster-Zeile STA WSYNC syncronisiR}eren STA COLPF2 in Farbregister LDA CONSOL Funktionstasten AND #1 START-Taste? BNE SCRCOL nein, weiter--> RTS S}********************* * ATMAS-II Demo: Farb-Scrolling PF85 * * Abbruch durch START-Taste ******************************************************** * Demo-Programm fuer ASC-Befehl/PF85 ************************************ * Zeigt die VeU}rwendung von ASC * zur Herstellung von Titelbildern * mit eigener Displaylist. Zu diesem * Zweck muss direkter Bildschirm- * V}code benutzt werden. Durch die * Verwendung der Trennzeichen * * % : Bildschirmcode * $ : Inverser Bildschirmcode * " : ATASCW}II-Code (f. CIO!) * / : Inverser ATASCII-Code * \ : ATASCII, letztes Byte invers * * kann der ASC-Befehl den jeweiligen * ErfX}ordernissen angepasst werden ************************************ * SDLSTL EQU $230 Displaylist-Vektor * * Programm steht imY} USER-Bereich * (ab $A800) * * Aufruf vom Editor: U * ORG $A800 LDA #DLIST Displaylist STA SDLSTL aktivZ}ieren LDA #DLIST/256 STA SDLSTL+1 RTS fertig! * * Abbruch mit ! * * * 'Handgestrickte' Displaylist * DLIST DFB 11[}2,112,112,112,112,112 DFB $40+6 DFW SCREEN DFB 6,6,6 DFB 112,$40+2 DFW SCREEN DFB 2 DFB 112,$40+7 DFW SCREEN DFB 7,7\},7,$41 DFW DLIST * * Bidschirminhalt mit ASC * SCREEN ASC $ DER ASC-BEFEHL $ ASC % erzeugt direkten % ASC % SCRE]}ENCODE % ASC $ in allen farben! $ ^}****** * Demo-Programm fuer ASC-Befehl/PF85 ************************************ * Zeigt die Ve********************************* * GRAFLIB.SRC * * Makro-Bibliothek * * GRAPHIK * * Fuer ATMAS-II * `} PETER FINZEL *********************************** * * IOCB-Struktur: * ICCOM EQU $342 ICSTA EQU $343 ICBAL a} EQU $344 ICBAH EQU $345 ICBLL EQU $348 ICBLH EQU $349 ICAX1 EQU $34A ICAX2 EQU $34B CIOV EQU $E456 * CIO-Befehle COPEN EQ b}U 3 CCLSE EQU 12 CGTXT EQU 5 CPTXT EQU 9 CGBIN EQU 7 CPBIN EQU 11 CDRAW EQU $11 * ATARI Graphik-Variable ATACHR E c}QU $2FB ROWCRS EQU $54 CURSOR- COLCRS EQU $55 POSITION * * GRAPHICS-Befehl * * Aufruf: GRAPHICS * * 0 bis d} 15 (XLs) * 0 bis 11 (400/800) * GRAPHICS MACRO STUFE JMP GR1@ DEV@ ASC "S:" GR1@ LDX #$60 LDA #CCLSE ZUERST KANAL 6 ST e}A ICCOM,X SCHLIESSEN JSR CIOV LDA #STUFE JETZT NEUE GRAPHIK STA ICAX2,X STUFE ANWAEHLEN AND #$F0 EOR #$10 ORA #$0C STA f} ICAX1,X LDA #COPEN STA ICCOM,X LDA #DEV@ STA ICBAL,X LDA #DEV@/256 STA ICBAH,X JSR CIOV MEND * * Auswahl der Zeichen g}farbe * * Aufruf: COLOR * * von 0 bis 255, je nach * Graphikmodus, muss eine * Konstante sein h}. * COLOR MACRO COL LDA #COL STA ATACHR MEND * * Positionierung des Cursors * * Aufruf: POSITION , * * , je i}nach Graphikmodus, beide * muessen Konstante sein * * POSITION MACRO X,Y LDA #X STA COLCRS LDA #X/256 STA COLCRS+1 LDA j}#Y STA ROWCRS MEND * Graphik-Punkte setzen * * Aufruf: PLOT , * * , je nach Graphikmodus, * muss sich um Kons k}tane * handeln * PLOT MACRO X,Y POSITION X,Y LDX #$60 KANAL 6 LDA #CPBIN STA ICCOM,X LDA #0 STA ICBLL,X STA I l}CBLH,X LDA ATACHR JSR CIOV MEND * * Graphik-Linien ziehen * * Aufruf: DRAWTO , * * , je nach Graphikmodus * m} Konstante * DRAWTO MACRO X,Y POSITION X,Y LDX #$60 KANAL 6 LDA #CDRAW STA ICCOM,X LDA #CCLSE STA ICAX1,X LDA # n}0 STA ICAX2,X JSR CIOV MEND ************************************* * Demo-Programm f. Graphik-Bibliothek * * zeichnet Raut o}e in GRAPHICS 7 ************************************* * * befindet sich im reservierten * Speicherplatz fuer Objektcode * p}ORG $A800 GRAPHICS 7+16 COLOR 1 PLOT 79,0 DRAWTO 159,47 DRAWTO 79,95 DRAWTO 0,47 DRAWTO 79,0 ENDLOS JMP ENDLOS * * A q}bruch mit * Makro-Bibliothek * * GRAPHIK * * Fuer ATMAS-II * 6*********************************** * IOLIB.SRC * * MAKRO-BIBLIOTHEK * * Input/Output * * fuer ATMAs}S-II * * von PETER FINZEL *********************************** * IOCB-Konstante CIOV EQU $E456 ICCOM EQU $t}342 ICSTA EQU $343 ICBAL EQU $344 ICBAH EQU $345 ICBLL EQU $348 ICBLH EQU $349 ICAX1 EQU $34A ICAX2 EQU $34B * CIO-Befehle u}COPEN EQU 3 CCLSE EQU 12 CGTXT EQU 5 CPTXT EQU 9 CGBIN EQU 7 CPBIN EQU 11 EOL EQU $9B * * MAKRO ZUR BERECHNUG DERv} KANALNUMMER * (hat nur interne Verwendung, ist * Beispiel zur Verwendung von ver- * schachtelten Makroaufrufen) * KANNUM Mw}ACRO KANAL LDA #KANAL IOCB-Offset ASL ;aus Kanalnr. ASL ;(mal 16) ASL ASL TAX ;ERGEBNIS IM X-REG MEND * * Name : Ox}PEN * Zweck : oeffnen eines Files * Aufruf: * OPEN ,,, * Beispiel: OPEN 1,4,0,"D:TEST.OBJ" * OPEN y}MACRO KANAL,AUX1,AUX2,FILENAME JMP OP1@ FNAM@ ASC FILENAME DFB EOL OP1@ KANNUM KANAL LDA #AUX1 STA ICAX1,X LDA #AUX2 STz}A ICAX2,X LDA #COPEN STA ICCOM,X LDA #FNAM@ STA ICBAL,X LDA #FNAM@/256 STA ICBAH,X JSR CIOV MEND * * Name : CLOSE {}* Zweck : File schliessen * Aufruf : CLOSE * Beispiel: CLOSE 1 * CLOSE MACRO KANAL KANNUM KANAL LDA #CCLSE STA I|}CCOM,X JSR CIOV MEND * * Name : PRINT * Zweck : Ausgabe eines mit 'ASC' * definierten Textes, muss * mit}} EOL beendet werden * Aufruf : PRINT ,